package com.leonardo.lengthexample;

import java.util.Date;

import MAR.Core.Reflectable;

import com.leonardo.beanme.model.ComboBox;
import com.leonardo.beanme.model.RadioBox;

public class LengthBean implements Reflectable {

	private int primitive;
	private Integer integer;
	private String hasLength;
	private Boolean bool;
	private ComboBox combo = new ComboBox(new String[] {"c1", "c2", "c3"});
	private RadioBox radio = new RadioBox(new String[] {"r1", "r2"});
	private Date date;
	private Long notSeen;
	
	/*Getters and Setters must follow java convention for default form*/
	/*Setters - its order define default form*/
	public void setPrimitive(int primitive) {
		this.primitive = primitive;
	}
	
	public void setInteger(Integer integer) {
		this.integer = integer;
	}
	
	public void setHasLength(String hasLength) {
		this.hasLength = hasLength;
	}
	
	public void setDate(Date date) {
		this.date = date;
	}
	
	public void setBool(Boolean bool) {
		this.bool = bool;
	}
	
	public void setCombo(ComboBox combo) {
		this.combo = combo;
	}
	
	public void setRadio(RadioBox radio) {
		this.radio = radio;
	}
	
	protected void setNotSeen(Long notSeen) {
		this.notSeen = notSeen;
	}
	
	/*Getters*/
	public int getPrimitive() {
		return primitive;
	}
	
	public Integer getInteger() {
		return integer;
	}
	
	public String getHasLength() {
		return hasLength;
	}
	
	public Boolean getBool() {
		return bool;
	}
	
	public ComboBox getCombo() {
		return combo;
	}
	
	public RadioBox getRadio() {
		return radio;
	}
	
	protected Long getNotSeen() {
		return notSeen;
	}
	
	public Date getDate() {
		return date;
	}
	
	public void printAll() {
		System.out.println("Primitive: " + primitive);
		System.out.println("Integer: " + integer);
		System.out.println("HasLength: " + hasLength);
		System.out.println("Bool: " + bool);
		System.out.println("Combo: " + combo.getSelected());
		System.out.println("Radio: " + radio.getSelected());
		System.out.println("NotSeen: " + notSeen);
		System.out.println("Date: " + date);
	}
}
